{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$$\n",
    "y = wx + b\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$$\n",
    "L = \\frac{1}{N} \\sum_{i=1}^N (y_i - (wx_i+b))^2\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$$\n",
    "[\\frac{\\partial L}{\\partial w}, \\frac{\\partial L}{\\partial b}]\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$$\n",
    "w_1 \\Leftarrow w_0 - \\alpha \\frac{\\partial L}{\\partial w} \\\\\n",
    "w_2 \\Leftarrow w_1 - \\alpha \\frac{\\partial L}{\\partial w} \\\\\n",
    "... \\\\\n",
    "w_{100} \\Leftarrow w_{99} - \\alpha \\frac{\\partial L}{\\partial w}\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$$\n",
    "(w_1,b_1) \\Leftarrow (w_0,b_0) - \\alpha [\\frac{\\partial L}{\\partial w}, \\frac{\\partial L}{\\partial b}]\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 多元线性回归\n",
    "\n",
    "$$\n",
    "y = w \\cdot x + b \\\\\n",
    "设w_0=b, x_0=1 \\\\\n",
    "y = w \\cdot x = w_0x_0 + w_1x_1 + w_2x_2\n",
    "$$\n",
    "\n",
    "这里要注意的一点\n",
    "\n",
    "$$\n",
    "y = w \\cdot x + b = [w_1, w_2, \\dots, w_n] \\cdot [x_1, x_2, \\dots, x_n]^T + b\n",
    "$$\n",
    "\n",
    "感知机的训练数据\n",
    "\n",
    "$$\n",
    "((x_0, x_1), 1/-1)\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 视频教程\n",
    "\n",
    "B站：《机器学习基石》《机器学习技法》林轩田；\n",
    "B站：《机器学习》吴恩达\n",
    "\n",
    "### 书\n",
    "\n",
    "《机器学习实战：基于Scikit-Learn和TensorFlow》\n",
    "《统计学习方法》李航\n",
    "《PRML》和《深度学习》(花书)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- 《数据结构与算法分析》（Java版）Mark Allen Weiss\n",
    "- 《算法》（第四版）\n",
    "- 《算法导论》\n",
    "\n",
    "- 《剑指offer》\n",
    "- leetcode\n",
    "\n",
    "只想练刷题，选leetcode的高频题"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "userId | itemId | score\n",
    "-----|------|------\n",
    "1 | 1 | 5\n",
    "1 | 2 | 1\n",
    "2 | 1 | 3"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$$\n",
    "P_{K \\times M}^T \\times Q_{K \\times N} \\approx R\n",
    "$$\n",
    "\n",
    "K为自定义的隐特征的数量"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
